Capabilities for External Uniqueness
نویسندگان
چکیده
Unique object references have many important applications in object-oriented programming. For instance, with su cient encapsulation properties they enable safe and e cient transfer of message objects between concurrent processes. However, it is a long-standing challenge to integrate unique references into practical object-oriented programming languages. This paper introduces a new approach to external uniqueness. The idea is to use capabilities for enforcing both aliasing constraints that guarantee external uniqueness, and linear consumption of unique references. We formalize our approach as a type system, and prove a type preservation theorem. Type safety rests on an alias invariant that builds on a novel formalization of external uniqueness. We show how a capability-based type system can be used to integrate external uniqueness into widely available object-oriented programming languages. Practical experience suggests that our system allows adding uniqueness information to common collection classes in a simple and concise way.
منابع مشابه
Capabilities for Uniqueness and Borrowing
An important application of unique object references is safe and efficient message passing in concurrent object-oriented programming. However, to prevent the ill effects of aliasing, practical systems often severely restrict the shape of messages passed by reference. Moreover, the problematic interplay between destructive reads–often used to implement unique references–and temporary aliasing th...
متن کاملExternal Uniqueness
External uniqueness is a novel form of unique pointers that fit more natural with object-oriented programming. External uniqueness enforces the structural property that a unique pointer is a dominating node to the aggregate it references—there may be no other pointer from outside the aggregate to objects in it in the rest of the system. This paper completes previous work by the authors (Clarke ...
متن کاملTwo-Dimensional Boundary-Conforming Orthogonal Grids for External and Internal Flows Using Schwarz-Christoffel Transformation
In this paper, a Schwarz-Christoffel method for generating two-dimensional grids for a variety of complex internal and external flow configurations based on the numerical integration procedure of the Schwarz-Christoffel transformation has been developed by using Mathematica, which is a general purpose symbolic-numerical-graphical mathematics software. This method is highly accurate (fifth order...
متن کاملTwo-Dimensional Boundary-Conforming Orthogonal Grids for External and Internal Flows Using Schwarz-Christoffel Transformation
In this paper, a Schwarz-Christoffel method for generating two-dimensional grids for a variety of complex internal and external flow configurations based on the numerical integration procedure of the Schwarz-Christoffel transformation has been developed by using Mathematica, which is a general purpose symbolic-numerical-graphical mathematics software. This method is highly accurate (fifth order...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009